package com.quan.system.service;

import java.util.List;

import com.quan.common.core.MyBaseService;
import com.quan.system.entity.SystemPermission;
import com.quan.system.entity.SystemRole;
import com.quan.system.entity.SystemUser;

/**
 * <p>
 * 系统-用户 服务类
 * </p>
 *
 * @author 杨浩泉
 * @since 2019-06-06
 */
public interface SystemUserService extends MyBaseService<SystemUser> {

	/**
	 * 根据账号查找用户
	 * 
	 * @param account
	 * @return
	 */
	public SystemUser findByUsername(String username);

	/**
	 * 查找用户角色
	 * 
	 * @param userId
	 * @return
	 */
	public List<SystemRole> findRolesByUserId(Long userId);

	/**
	 * 查找用户权限
	 * 
	 * @param userId
	 * @return
	 */
	public List<SystemPermission> findPermissionsByUserId(Long userId);

	/**
	 * 修改个人登录密码
	 * 
	 * @param id          用户ID
	 * @param oldPassword 原密码
	 * @param newPassword 新密码
	 */
	public void updatePassword(Long id, String oldPassword, String newPassword);
	
	/**
	 * 重置用户登陆密码为[123456]
	 * @param idList 用户ID集合
	 */
	public boolean batchResetPassword(List<Long> idList) ; 

	
}
